#!/bin/bash
###################
#@in_url 输入的url
#@in_ip 输入的ip
##########################
in_url=${1}
in_ip=${2}

#更改host
updateHost()
{
  # 原ip
  old_ip=`cat /etc/hosts | grep ${in_url} | awk '{print $1}'`
  # 原hosts映射行
  old_ip_map="${old_ip} ${in_url}"
  # 新hosts映射行
  new_ip_map="${in_ip} ${in_url}"

  # 如果有值
  if [ "$old_ip" ];then
    # 如果是原值，直接输出
    if [ "$old_ip" == "$in_ip" ];then
      echo "$old_ip_map 无变化"
    else
      # 有变更，直接替换
      sed -i "s/${old_ip_map}/${new_ip_map}/g" /etc/hosts
      echo "${old_ip_map} 替换成：${new_ip_map}"
    fi
  else
    # 无值，直接写入
    echo ${new_ip_map} >> /etc/hosts
    echo "${new_ip_map} 写入成功"
  fi

}

main()
{
   updateHost
}
main